Skip to main content

scriptOnly

Type

property

Summary

Specifies whether the stack should be saved as script only which does not retain any objects or custom properties

Syntax

set the scriptOnly of <stack> to { true | false }

Description

A script only stack is a stack whose scriptOnly property is true. A scriptOnly stack will save just the script with a single header line declaring the stack name. If the stack has a stack behavior, the name of the behavior stack is also saved to the header line. Any other objects or properties of the stack will not be written to disk.

The scriptOnly property has been added to enable scripts to detect and set the file format of the stack. Without this property it is not possible to detect the file format the stack is being saved in without examining the file itself.

warning

scriptOnly stacks only save the stack name, script and stack behavior. Any other type of behavior, or property changes and objects created while the stack is open will not exist the next time the stack is opened.

note

Script only stacks are unable to be password protected. In order to password protect a script only stack use the following commands.

    set the scriptOnly of stack \"Secrets\" to false
set the password of stack \"Secrets\" to field \"Password\"

Parameters

NameTypeDescription

Stack

The name or ID of the stack.

Examples

-- git blame on a script only stack
if the scriptOnly \
of stack theStack and the filename of stack theStack is not empty then
put the folder into theOldFolder
set the itemDelimiter to slash
set the folder to item 1 to -2 of the filename of stack theStack
put shell("git blame" && the last item \
of the filename of stack theStack) into field "blame"
set the folder to theOldFolder
end if
-- password protect for deployment
if the scriptOnly of stack theStack then
set the scriptOnly of stack theStack to false
set the password of stack theStack to uuid()
put the filename of stack theStack into theFilename
set the itemDelimiter to "."
put "livecode" into the last item of theFilename
set the filename of stack theStack to theFilename
save stack theStack
set the password of stack theStack to empty
set the scriptOnly of stack theStack to true
put "livecodescript" into the last item of theFilename
end if

command: create stack

glossary: script only stack

object: stack

property: behavior

Compatibility and Support

Introduced

LiveCode 8.0

OS

mac

windows

linux

ios

android

Platforms

desktop

mobile

server

Thank you for your feedback!

Was this page helpful?